import com.kungfu.config.Constant;
import com.kungfu.entity.request.*;
import com.kungfu.entity.response.InpatientChargeResponse;
import com.kungfu.entity.response.InpatientResponse;
import com.kungfu.entity.response.MakeSureUserResponse;
import com.kungfu.utils.DateUtils;
import com.kungfu.utils.ResultCodeEnum;
import org.omg.CORBA.PUBLIC_MEMBER;

import java.text.ParseException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class InitTestData {
  static   DateUtils dateUtils = new DateUtils();


    public static void main(String[] args) throws ParseException {
//        initInpatientData();
        //  System.out.println(initChargeData());
//       Date date = DateUtils.parseSJDH2Date(DateUtils.createSJDH());
//        System.out.println(date);
//        System.out.println(initInpatientData());
//        initInpatientData();
        System.out.println(initOurPatientChargeData());
    }

    public static String initOurPatientChargeData() {

        String fphm = dateUtils.parseDate2Sjdh(new Date());

        OutpatientRequest request = new OutpatientRequest();
        request.setYYBH(Constant.HospitalType.HK);
        request.setJZBH("a000001");
        request.setHZXM("徐新民");
        request.setHZID("420104194307301631");
        request.setJZKH("10101010101010");
        request.setZZDH("hk201843164326xh0835");
        request.setJZRQ(fphm);
        request.setJZKS("1001");
        request.setMZZD(Constant.DiganosCode.OTHER + "");
        request.setFPHM(fphm);
        request.setJSRQ(fphm);
        request.setBZ("测试");
        request.setJBR("system test");
        List<OutpatientItemData> list = new ArrayList<>();
        OutpatientItemData data = new OutpatientItemData();
        list.add(data);
        //填充药品数据
        data.setFPHM(fphm);
        data.setFYRQ(fphm);
        data.setXMBH("6833686101125");
        data.setXMBM("34478");
        data.setSDML("152");
        data.setEJFN("");
        data.setKDKS("1010");
        data.setZXKS("1010");
        data.setXMMC("*注射器/低阻力注射器20ml/浙江灵洋/支");
        data.setYPGG("20ml");
        data.setDW("支");
        data.setYPJX("");
        data.setDWFY("454");
        data.setMCYL("1");
        data.setJE("454");
        data.setYSXM("1010");
        data.setYSGH("1010");
        data.setYPCD("0");
        data.setBZ("test");
        request.setFYZE(data.getJE());
        request.setRESULTSET(list);
        return request.toString();
    }


    public static void initInpatientData() {
        InpatientRequest request = new InpatientRequest();
        request.setSFZH("420881198310236518");
        request.setYHXM("廖荣臻");
        request.setZZDH("hk20183117232xh2560");

        request.setJZBH("1661468");
        request.setZYHM("1661468");
        request.setZYKS("2229");
        request.setZYKSBM("2229");
        request.setRYRQ("2018/1/24 0:00:00");
        request.setJZKH("215899024");

        request.setRYZD("3");
        request.setBZ("");
        System.out.println(request.toString());
    }
//    public static void main(String[] args){
//
//    }


    public static String initChargeData() {
        InpatientChargeRequest request = new InpatientChargeRequest();
        String sjdh = dateUtils.createSJDH();

        request.setZYH("ZYH001");
        request.setZZDH("a00000002");

        request.setHZID("420201199701231314");

        request.setYYBM("xh");

        request.setCYKS("外科");
        request.setCYRQ(dateUtils.getCurrentDate());
        request.setZYTS("1");

        List<InpatientChargeTotalData> list = new ArrayList<InpatientChargeTotalData>();
        InpatientChargeTotalData totalData = new InpatientChargeTotalData();
        totalData.setJZJLH("a00000002");
        totalData.setZYH("ZYH001");
        totalData.setZZDH("a00000002");
        totalData.setSJDH(sjdh);
        totalData.setHZXM("李四");
        totalData.setHZID("420201199701231314");
        totalData.setJZKH("外科");
        totalData.setYYBM("xh");
        totalData.setSJDFEE("237600");
        totalData.setSJDNUM("2");
        List<InpatientChargeItemData> listItem = new ArrayList<InpatientChargeItemData>();
        InpatientChargeItemData item1 = new InpatientChargeItemData();
        item1.setJZJLH("a00000002");
        item1.setZYH("ZYH001");
        item1.setZZDH("a00000002");
        item1.setSJDH(sjdh);
        item1.setMXBH("20180107101");
        item1.setHZXM("李四");
        item1.setHZID("420201199701231314");
        item1.setJZKH("JZK001");
        item1.setKDKS("外科");
        item1.setZXKS("外科");
        item1.setYYBM("xh");
        item1.setSJDLB(Constant.ZzdType.ZY + "");
        item1.setXMBM("24246");
        item1.setEJFN("2018010710");
        item1.setXMMC("任意皮瓣形成术");
        item1.setYPGG("");
        item1.setDW("");
        item1.setDWFY("88000");
        item1.setSDML("1");
        item1.setYPJX("");
        item1.setJE("176000");
        item1.setMCYL("2");
        item1.setJZSJ(dateUtils.getCurrentDate());
        item1.setSFJK("0");
        InpatientChargeItemData item2 = new InpatientChargeItemData();
        item2.setJZJLH("a00000002");
        item2.setZYH("ZYH001");
        item2.setZZDH("a00000002");
        item2.setSJDH(sjdh);
        item2.setMXBH("20180107111");
        item2.setHZXM("李四");
        item2.setHZID("420201199701231314");
        item2.setJZKH("JZK001");
        item2.setKDKS("外科");
        item2.setSDML("1");
        item2.setZXKS("外科");
        item2.setYYBM("xh");
        item2.setSJDLB(Constant.ZzdType.ZY + "");
        item2.setXMBM("24269");
        item2.setEJFN("2018010711");
        item2.setXMMC("显微手术加收");
        item2.setYPGG("");
        item2.setDW("");
        item2.setDWFY("61600");
        item2.setMCYL("1");
        item2.setYPJX("");
        item2.setJE("61600");

        item2.setJZSJ(dateUtils.getCurrentDate());
        item2.setSFJK("0");
        listItem.add(item1);
        listItem.add(item2);
        totalData.setResultSet(listItem);
        list.add(totalData);

        return request.toString();
    }

    public static String queryZzdIsExist() {
        MakeSureUserResponse response = new MakeSureUserResponse();
        response.setZZDH("aa0001");
        response.setZZYYBH(Constant.HospitalType.HK);
        response.setZZYYMC(Constant.HospitalType.HK);
        response.setXM("找找");
        response.setDWMC("后勤");
        response.setXB("0");
        response.setZGLB("1");
        response.setZZYXRQ("2018-4-4 00:00:00");
        response.setResult(ResultCodeEnum.SUCCESS);
        return response.toString();
    }

    public static String inpatientResponse() {
        InpatientResponse response = new InpatientResponse();
        response.setJZJLH("a00001");
        response.setResult(ResultCodeEnum.SUCCESS);
        return response.toString();
    }

    public static String inpatientChargeResponse() {
        InpatientChargeResponse response = new InpatientChargeResponse();
        response.setResult(ResultCodeEnum.SUCCESS);
        response.setNotExistData("[]");
        response.setZFZJE("2222222");
        response.setGFZJE("1111111");
        response.setFZJE("3333333");
        response.setJSXH("aaaaa001");
        return response.toString();
    }
}
